"""1.把乘法表左上角考虑成（1，1）坐标点，每个乘法表达式 等于row*col:
   2.输出是一行一行输出的，所有行输出后需要换行
   3.每一行的行号，就是列从1到行号的循环。
   4.格式化输出使用占位，将所有乘积都认为是两位数，按照左对齐
"""
print("第一象限的乘法表 for in")
for row in range(1,10):
    for col in range (1,row+1):
        print("{}x{}={:<4}".format(col,row,row*col),end=" ")
    print("")#循环结束以后换行
print("="*80)#与效果图类似的分隔符号
print("")


print("第一象限的乘法表 while")
row=1
while row<=9:
    col=1
    while col<row+1:
        print("{}x{}={:<4}".format(col, row, row * col), end=" ")
        col=col+1
    print("")  # 循环结束以后换行
    row=row+1
print("="*80)#与效果图类似的分隔符号
print("")


print("第四象限的乘法表 for in")
for row in range(9, 0,-1):
    for col in range(1,row+1):
        print("{}x{}={:<4}".format(col,row,row*col),end=" ")
    print("")
print("="*80)
print("")

print("第四象限的乘法表 while")
row=9
while row>0:
    col=1
    while col < row + 1:
        print("{}x{}={:<4}".format(col,row,row*col),end=" ")
        col=col+1
    print("")
    row=row-1
print("="*80)
print("")


print("第二象限的乘法表 for in")
for row in range(1, 10):
    print("{:<9}".format("")*(9-row),end="")#使用空格占位，每一个计算式左对齐占用九个空格，（9-row）代表每一行有多少个计算式
    for col in range(row,0,-1):
        print("{}x{}={:<4}".format(col,row,row*col),end=" ")
    print("")
print("="*80)
print("")

print("第二象限的乘法表 while")
row=1
while row <10:
    print("{:<9}".format("")*(9-row),end="")#使用空格占位，每一个计算式左对齐占用九个空格，（9-row）代表每一行有多少个计算式
    col=row
    while col>0:
        print("{}x{}={:<4}".format(col,row,row*col),end=" ")
        col=col-1
    print("")
    row=row+1
print("="*80)
print("")

print("第三象限的乘法表 for in")
for row in range(9, 0,-1):
    print("{:<9}".format("")*(9-row),end="")
    for col in range(row,0,-1):
        print("{}x{}={:<4}".format(col,row,row*col),end=" ")
    print("")
print("="*80)
print("")


print("第三象限的乘法表 while")
row=9
while row>0:
    print("{:<9}".format("")*(9-row),end="")
    col = row
    while col>0:
        print("{}x{}={:<4}".format(col,row,row*col),end=" ")
        col=col-1
    print("")
    row=row-1
print("="*80)
print("")
